package com.xiangxg.jvm.classloader;
/*
   对于数组实例来说，其类型是由JVM在运行期间动态生成的，表示为class [Lcom.xiangxg.jvm.MyParent4
   这种形式。动态生成的类型，其父类型就是Object

   对于数组来说，JavaDoc经常将构成数组的Component,实际是将数据降低一个维度后的类型
   anewarray:表示创建一个引用类型的（如类、接口、数组）的数组，并将其引用值压入栈顶
   newarray:表示创建一个指定的原始类型（如int 、float、char等）的数组，并将其值压入栈顶
 */
public class MyTest4 {
    public static void main(String[] args) {
        //场景一
        new MyParent4();
        System.out.println("========");
        new MyParent4();
        //场景二
        MyParent4[] myParent4s = new MyParent4[1];
        // 由虚拟机在运行时生成的类型
        // class [Lcom.xiangxg.jvm.MyParent4;
        System.out.println(myParent4s.getClass());
        MyParent4[][] myParent4s1 = new MyParent4[1][1];
        System.out.println(myParent4s1.getClass());

        int[] ints = new int[1];
        System.out.println(ints.getClass());

        byte[] bytes = new byte[1];
        System.out.println(bytes.getClass());

    }
}
class MyParent4{
    static {
        System.out.println("MyParent4 static code");
    }
}
